﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RMS.Model
{
    public class StudentResearchGroup
    {
        private int _researchGroupId;
        private int _academicProgramId;
        private string _researchGroupName;
        private string _researchGroupDescription;
        private List<Student> _students;

        public StudentResearchGroup(int groupId, int programId, string name, string description = "...")
        {
            this._researchGroupId = groupId;
            this._academicProgramId = programId;
            this._researchGroupName = name;
            this._researchGroupDescription = description;
            this._students = new List<Student>();
        }

        public override bool Equals(object obj)
        {
            if (obj == null) return false;
            StudentResearchGroup group = obj as StudentResearchGroup;
            if (group.Id == this.Id) return true;
            return false;
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

        public int Id
        {
            get { return this._researchGroupId; }
            set { this._researchGroupId = value; }
        }
        public int ProgramId
        {
            get { return this._academicProgramId; }
            set { this._academicProgramId = value; }
        }
        public string Name
        {
            get { return this._researchGroupName; }
            set { this._researchGroupName = value; }
        }
        public string Description
        {
            get { return this._researchGroupDescription; }
            set { this._researchGroupDescription = value; }
        }
        public List<Student> Students
        {
            get { return this._students; }
            set { this._students = value; }
        }
    }
}
